package no.rmz.chez.tournament;

import java.util.Collection;
import java.util.Map;

import no.rmz.chez.game.GameResult;
import no.rmz.chez.players.ChessPlayer;

/**
 * A class that can take a bunch of players, their pre-
 * tournament ratings,  and their results during the
 * tournament, and compute their post-tournament ratings.
 */
public class RatingAssigner {

    /**
     * Given a bunch of pre-tournament ratings and tournament results,
     * assign new ratings to the players.
     *
     * @param preTournamentRatings ratings from before tournament.
     * @param results the game results from the tournament.
     * @return the new set of ratings
     */
    public final Map<ChessPlayer, Rating>  getRatings(
            final Map<ChessPlayer, Rating>                 preTournamentRatings,
            final Map<PlayerPair, Collection<GameResult>>  tournamentResults
    ) {
        return null;
    }
}

